Image processing device, method and program

ABSTRACT

A marker corresponding to an editing state at an arbitrary point in time of image data being edited is stored in memory. The image of an arbitrary editing state can be displayed by a user selecting the displayed marker. The original image data is not updated. When saving the image data file, the saved editing state at an arbitrary point of time can be saved as a single file together with the original image data. By selecting a plurality of markers, images corresponding to a plurality of processing states can be displayed simultaneously. A marker can be used to create a new image data file of a desired processing state, or a plurality of markers can be selected to create a plurality of new image data files. Image data can be displayed as thumbnail images, and thumbnail images and ordinary images can be concurrently displayed.

BACKGROUND OF THE INVENTION

1. Field of Invention

The present invention generally relates to image processing devices,methods and programs, and in particular relates to image processingdevices, methods and programs capable of recording in memory the editingstate of an arbitrary point in time.

2. Description of Related Art

In conventional image editing processing, a user is able to store theediting state of an image by commanding the storage of such image inone's desired state. Further, certain image editing application programssuch as PhotoShop are provided with a History function, whereby theediting state is automatically saved without the user having toconsciously command storage processing. Thus, the user is able to returnthe editing state of an image back to a desired point in time.

In the processing for saving the editing state, a new saved file iscreated for each state, and is saved separately from the image databeing processed. In addition, when the user commands the return to thesaved state, the image data being processed, that is, the latest imagedata, is overwritten based on the data of the saved file.

Moreover, when using the History function, all processing contents willbe recorded as History in chronological order, and in order to return toa desired state, the recorded History data is utilized such that thelatest image data is overwritten based on the History data from thedesired state.

Nevertheless, the storage processing employed in conventional imageediting requires the creation of a saved file for each such storageprocessing, and much time is required to do this. In addition, in orderto record a plurality of states for a single image data, a plurality offiles needs to be created and saved.

Further, conventionally, upon saving the editing state, when oncereturning from the latest state to a desired editing state of the pastby tracing back the processing and then commencing new processing fromsuch a state, the processing contents implemented up to the latest stateprior to tracing back the processing will not be saved as a saved file(i.e., it is overwritten). Similarly, with the History function, whenonce returning from the latest state to a desired editing state of thepast by tracing back the processing and then commencing new processingfrom such a state, the processing contents implemented up to the lateststate prior to tracing back the processing will be deleted from theHistory data. Therefore, in order for the user to add new processingfrom the desired processing state by tracing back the processing whilekeeping the current and latest processing state, and to compare the twostates, the user was forced to perform complicated processing.

In addition, for example, when the image being processed is saved or theapplication is ended, the archive data of the saved file and Historyfunction will be deleted, and when the once saved image file is to bereopened, it is not possible to use the archive of the previousprocessing.

SUMMARY OF THE INVENTION

The present invention was devised in view of the foregoingcircumstances, and has as one object the facilitation of recording in amemory the editing state of image data of an arbitrary point in time,and when saving the image data, the recorded editing state of thearbitrary point in time can be saved together with the original imagedata.

An image processing device of one aspect of the present inventionincludes: an original image data storage means for saving original imagedata; an operational input acquisition means for acquiring operationalinputs of a user; a command and parameter storage means for temporarilysaving a command and a parameter for editing the original image dataacquired through the operational input acquisition means; an editingmeans for editing the original image data and creating edited image databased on the command and the parameter acquired with the operationalinput acquisition means; a marker storage means for saving one or aplurality of the commands and the parameters temporarily saved in thecommand and parameter storage means as marker data for showing theediting state at a prescribed timing when an operational inputcommanding the storage of the current editing state is acquired throughthe operational input acquisition means; and a file storage controlmeans for creating and saving a single image data file containing theoriginal image data saved with the original image data storage means andthe marker data saved with the marker storage means.

The image processing device also may include a thumbnail image datacreation means for creating thumbnail image data based on the originalimage data, or based on the edited image data edited and created withthe editing means.

The image processing device also may include an image data displaycontrol means for controlling the display of the original image data, orthe display of the edited image data edited and created with the editingmeans.

The image processing device also may include a thumbnail image datacreation means for creating thumbnail image data based on the originalimage data, or based on the edited image data edited and created withthe editing means, and the image data display control means mayadditionally control the display of the thumbnail image data createdwith the thumbnail image data creation means.

The image processing device also may include a reading control means forcontrolling the reading of the image data file stored by the filestorage control means, wherein when a plurality of the marker data iscontained in the image data file, the editing means may edit theoriginal image data and create a plurality of the edited image databased on the plurality of marker data contained in the image data file,and the image data display control means may control the display of theedited image data created with the editing means.

The image processing device also may include a marker data displaycontrol means for controlling the display of a list of the marker datasaved with the marker storage means, wherein when an operational inputis acquired with the operational input acquisition means for selectingany one of the marker data in the list displayed by the marker datadisplay control means, the editing means may edit the original imagedata and create edited image data based on the marker data that wasselected, and the image data display control means may control thedisplay of the edited image data edited with the editing means.

When the operational input acquired with the operational inputacquisition means is an operational input for selecting a plurality ofthe marker data among the marker data in the list displayed by themarker data display control means, the editing means may edit theoriginal image data and create a plurality of the edited image databased on the plurality of marker data thus selected.

The image processing device also may include a thumbnail image datacreation means for creating thumbnail image data based on the originalimage data, or based on the edited image data edited and created withthe editing means, and the thumbnail image data creation means maycreate a plurality of the thumbnail image data based on a plurality ofthe edited image data edited and created based on a plurality of themarker data selected with the editing means.

When an operational input for commanding the storage of the image datafile is acquired with the operational input acquisition means, the filestorage control means may control the storage of a single image datafile containing the original image data saved with the original imagedata storage means and the marker data saved with the marker storagemeans. The file storage control means may control the storage of asingle image data file containing the command and the parameter savedwith the command and parameter storage means in addition to the originalimage data saved with the original image data storage means and themarker data saved with the marker storage means.

The image processing device also may include a marker data displaycontrol means for controlling the display of a list of the marker datasaved with the marker storage means, and a new original image datacreation means for editing the original image data and creating neworiginal image data based on the marker data saved with the markerstorage means. When the operational input acquired with the operationalinput acquisition means is an operational input for selecting aplurality of the marker data among the marker data in the list displayedby the marker data display control means, the new original image datacreation means may edit the original image data and create a pluralityof the new original image data based on the plurality of marker datathus selected.

A program according to one aspect of the present invention includesinstructions for performing: an original image data storage control stepof controlling the storage of original image data; an operational inputacquisition step of acquiring operational inputs of a user; a commandand parameter storage control step of controlling the temporary storageof a command and a parameter for editing the original image dataacquired through the processing of the operational input acquisitionstep; an editing step of editing the original image data and creatingedited image data based on the command and the parameter acquired withthe processing of the operational input acquisition step; a markerstorage control step of controlling the storage of one or a plurality ofthe commands and the parameters in which the temporary storage thereofis controlled with the processing of the command and parameter storagecontrol step as marker data for showing the editing state at aprescribed timing when an operational input commanding the storage ofthe current editing state is acquired through the operational inputacquisition step; and a file storage control step of creating a singleimage data file containing the original image data in which storagethereof is controlled with the processing of the original image datastorage control step and the marker data in which storage thereof iscontrolled with the processing of the marker storage control step, andcontrolling the storage of the image data file.

The program also may include instructions for performing a thumbnailimage data creation step of creating thumbnail image data based on theoriginal image data, or based on the edited image data edited andcreated with the processing of the editing step.

The program also may include instructions for performing an image datadisplay control step of controlling the display of the original imagedata, or the display of the edited image data edited and created withthe processing of the editing step.

The program also may include instructions for performing a thumbnailimage data creation step of creating thumbnail image data based on theoriginal image data, or based on the edited image data edited andcreated with the processing of the editing step, and the processing ofthe image data display control step may additionally control the displayof the thumbnail image data created with the processing of the thumbnailimage data creation step.

The program also may include instructions for performing a readingcontrol step of controlling the reading of the image data file stored bythe file storage control step, wherein when a plurality of the markerdata is contained in the image data file, the processing of the editingstep may edit the original image data and create a plurality of theedited image data based on the plurality of marker data contained in theimage data file, and the processing of the image data display controlstep may control the display of the edited image data created with theprocessing of the editing step.

The program also may include instructions for performing a marker datadisplay control step of controlling the display of a list of the markerdata in which storage thereof is controlled with the processing of themarker storage control step, wherein when an operational input isacquired with the processing of the operational input acquisition stepfor selecting any one of the marker data in the list displayed by theprocessing of the marker data display control step, the processing ofthe editing step may edit the original image data and create editedimage data based on the marker data that was selected, and theprocessing of the image data display control step may control thedisplay of the edited image data edited with the processing of theediting step.

When the operational input acquired with the processing of theoperational input acquisition step is an operational input for selectinga plurality of the marker data among the marker data in the listdisplayed by the processing of the marker display control step, theprocessing of the editing step may edit the original image data andcreate a plurality of the edited image data based on the plurality ofmarker data thus selected.

The program also may include instructions for performing a thumbnailimage data creation step of creating thumbnail image data based on theoriginal image data, or based on the edited image data edited andcreated with the processing of the editing step, and the processing ofthe thumbnail image data creation step may create a plurality of thethumbnail image data based on a plurality of the edited image dataedited and created based on a plurality of the marker data selected withthe processing of the editing step.

When an operational input for commanding the storage of the image datafile is acquired with the processing of the operational inputacquisition step, the processing of the file storage control step maycontrol the storage of a single image data file containing the originalimage data in which storage thereof is controlled with the processing ofthe original image data storage control step and the marker data inwhich storage thereof is controlled with the processing of the markerstorage control step. The processing of the file storage control stepmay control the storage of a single image data file containing thecommand and the parameter in which storage thereof is controlled withthe processing of the command and parameter storage control step inaddition to the original image data in which storage thereof iscontrolled with the processing of the original image data storagecontrol step, and the marker data in which storage thereof is controlledwith the processing of the marker storage control step.

The program also may include instructions for performing a marker datadisplay control step of controlling the display of a list of the markerdata in which storage thereof is controlled with the processing of themarker storage control step, and a new original image data creation stepof editing the original image data and creating new original image databased on the marker data in which storage thereof is controlled with theprocessing of the marker storage control step. When the operationalinput acquired with the processing of the operational input acquisitionstep is an operational input for selecting a plurality of the markerdata among the marker data in the list displayed by the processing ofthe marker display control step, the processing of the new originalimage data creation step may edit the original image data and create aplurality of the new original image data based on the plurality ofmarker data thus selected.

With the image processing device, method and program of some aspects ofthe present invention, original image data is saved, operational inputsof the user are acquired, commands and parameters for editing theoriginal image data are temporarily saved, original image data is editedbased on the commands and parameters so as to create edited image data,and when operational input commanding the storage of the current editingstate is acquired, the temporarily saved one or a plurality of commandsand parameters are saved as marker data representing the editing stateof a prescribed timing, and a single image data file containing theoriginal image data and marker data is saved.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described in conjunction with the followingdrawings in which like reference numerals designate like elements, andin which:

FIG. 1 is a block diagram showing the basic components of a personalcomputer;

FIG. 2 is a functional block diagram showing some realizable functionswhen an image processing application program employing the presentinvention is executed;

FIG. 3 is a diagram for explaining a display window;

FIG. 4 is a diagram for explaining the display window;

FIG. 5 is a diagram for explaining a case of displaying a plurality ofthumbnail images on the display window;

FIG. 6 is a diagram for explaining a case of concurrently displaying anordinary image and thumbnail images on the display window;

FIG. 7 is a diagram for explaining a case of displaying a plurality ofdisplay windows;

FIG. 8 is a diagram for explaining the saving of markers;

FIG. 9 is a diagram for explaining the selection of a marker and savingof the current process;

FIG. 10 is a diagram for explaining the selection of a marker and savingof the current process;

FIG. 11 is a diagram for explaining the saving of a new marker;

FIG. 12 is a diagram for explaining the selection of a marker and savingof the current process;

FIG. 13 is a diagram for explaining the selection of a marker and savingof the current process;

FIG. 14 is a diagram for explaining the display of a plurality of editedimages employing markers;

FIG. 15 is a diagram for explaining the processing when a desired editedimage is selected from the plurality of edited images employing amarker;

FIG. 16 is a diagram for explaining the selection of a marker and savingof the current process;

FIG. 17 is a diagram for explaining the display of a plurality of editedimages employing markers;

FIG. 18 is a diagram for explaining the creation of a plurality of neworiginal data employing markers;

FIG. 19 is a diagram for explaining the saving of image data files;

FIG. 20A is a flowchart for explaining processing executed by an imageprocessing application program employing the present invention;

FIG. 20B is a flowchart for explaining processing executed by an imageprocessing application program employing the present invention; and

FIG. 20C is a flowchart for explaining processing executed by an imageprocessing application program employing the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

An image processing device, for example, a personal computer, thatperforms image processing while implementing one aspect of theinvention, is able to recognize the command for editing image data,which is input by a user with any of various input devices, and theparameter corresponding to such command as a single process, and applythe foregoing processes to the image data and display the currentediting state. In addition, by temporarily saving the processes made byoperational inputs, such a device implementing the present invention isable to save as markers the processes that are stored when the userwishes to save the editing state or when the user commands the closingof the image data file.

The user is able to command the storage of markers at a desired timing,and a plurality of markers may be saved. In addition, by applying thesaved markers to the original data, the user is able to recreate one'sdesired editing state. In this instance, the original data will not besubject to overwriting processing employing the marker. Thus, withoutregard to the chronological order in which the markers were stored, theediting state corresponding to the markers may be recreated arbitrarily.

When the edited image is to be recorded, according to one embodiment ofthe invention, the image data file corresponding to the image data to berecorded will be composed of the original data, the marker saved by theuser's processing, and the current process data, which is the processdata saved when the storage of the image data file was commanded. Inother words, when the user commands the storage of the image data file,the original data is not updated and saved, but rather the originaldata, saved marker and saved current process data are saved as a singleimage data file. Thus, when the user reopens the once saved image data,the marker and current process data saved with the user's processingalso will be saved concurrently, and the user can therefore conductediting while utilizing the editing state before storage.

In addition, not only can the present invention enable the recreationand confirmation of image data in a desired editing state employing themarker selected by the user, it also is able to create a new image datafile based on the image data of such editing state. When a new imagedata file is created, the image data employing the marker designated bythe user will be recognized as the original data of the new image datafile.

The present invention can be used with various images such asphotographs, a single frame of animation, illustrations, diagrams etc.Image data formats that can be used include, for example, BMP (BitMap),JPEG (Joint Photographic Experts Group), TIFF (Tagged Image FileFormat), gif (graphics interchange format), PIC, PICT, EPS (EncapsulatedPostScript), DCS (Desktop Color Separations), PNG (Portable NetworkGraphics), PDF (Adobe Acrobat Portable Document Format), PCX and ScitexCT (Continuous Tone).

Next, exemplary embodiments that practice aspects of the presentinvention are explained with reference to the drawings.

FIG. 1 is a block diagram showing the constitution of a personalcomputer 1. The personal computer 1 may be, for example, a desktopcomputer or a laptop computer.

In FIG. 1, a CPU (Central Processing Unit) 10 executes variousprocessing in accordance with programs stored in a ROM (Read OnlyMemory) 12, or programs loaded from a memory unit 18 to a RAM (RandomAccess Memory) 13. Data and the like necessary for the CPU 10 to executethe various processing are appropriately stored in the RAM 13.

The CPU 10, ROM 12 and RAM 13 are mutually connected via abi-directional bus 14. An I/O interface 15 also is connected to bus 14.

Connected to the I/O interface 15 are, for example, an input unit 16which can be one or more of a keyboard, mouse, touch pad, joystick andtrack pad; an output unit 17 which can be one or more of a display andspeaker; a memory unit 18 which can be, for example, a hard disk; and acommunication unit 19 which can be, for example, one or more of a modemand a terminal adapter.

The input unit 16, upon receiving the operational input of the user,supplies to the CPU 10 a signal representing such user's operationalinput via the I/O interface 15 and bus 14. The output unit 17, based onthe control of the CPU 10, displays data containing images or text onthe screen for presenting such data to the user, and outputs sound fromthe speaker. The memory unit 18 stores application programs executableby the CPU 10, data created by such application programs, or availabledata. The communication unit 19 performs communication processing via anetwork, which can include, for example, the Internet.

A drive 20 also is connected to the I/O interface 15, and one or more ofa magnetic disc 31, an optical disc 32, an optical magnetic disc 33, asemiconductor memory 34 or the like is installed thereon as necessary,and the computer program read out therefrom is installed in the memoryunit 18 as necessary.

In the personal computer 1 explained with reference to FIG. 1, an imageprocessing application program employing the present invention isinstalled in the memory unit 18 or ROM 12. Based on the operationalinput of the user input with the input unit 16, the CPU 10, by executingthe image processing application program by loading it into the RAM 13,is able to perform image editing processing with the image data filesaved in the memory unit 18, or save the newly created image data fileor the image data file in which the marker containing the image datafile in the memory unit 18 was updated.

Functions that are executed with the CPU 10 when an image processingapplication program employing the present invention is loaded into theRAM 13 and executed with the CPU 10 are now explained with reference tothe functional block diagram of FIG. 2.

An operational input acquisition unit 51 acquires the operational inputof the user input from the input unit 16 explained with reference toFIG. 1. A reading control unit 52 reads the image data file selected bythe user from the memory unit 18 based on the user's operational inputsupplied from the operational input acquisition unit 51, supplies theoriginal data to an original data storage unit 53, and, when a marker iscontained in the image data file, supplies the marker to the markerstorage unit 54 and saves it therein.

A command and parameter extraction unit 55 extracts the command andparameter for image processing from the operational input of the usersupplied from the operational input acquisition unit 51. Some examplesof possible commands include, for example, tone curve adjustment, colorbalance adjustment, brightness/contrast adjustment, hue/color saturationadjustment and the like. The respective commands are associated with aparameter, which can be, for example, the adjustment value, for example,a parameter representing the brightness, a parameter representing thecolor saturation, and so on.

A process storage unit 56 sequentially saves the comrnand(s) andparameter(s) supplied from the command and parameter extraction unit 55as the user's operational process. Further, when a command is made bythe user to save the process saved in the process storage unit 56 as amarker based on the user's operational input supplied from theoperational input acquisition unit 51, the process storage unit 56supplies the saved process to the marker storage unit 54.

When a command is made to save the process saved in the process storageunit 56 as a marker, the marker storage unit 54 saves the processsupplied from the process storage unit 56. That is, at least a pair ofdata (at least one command and its associated parameter) is saved as asingle marker. Further, upon receiving a notification from theoperational input acquisition unit 51 indicating that a marker has beenselected by the user and an operational input representing that acommand for displaying the image data corresponding to such marker hasbeen made, the marker storage unit 54 supplies to an image processingunit 57 the data of the marker selected by the user. Moreover, uponreceiving a notification from the operational input acquisition unit 51indicating that a marker has been selected by the user and anoperational input representing that a command for creating a new imagedata corresponding to such marker has been made, the marker storage unit54 supplies to a marker applied image data creation unit 58 the data ofthe marker selected by the user.

The image processing unit 57 can perform processing corresponding to thecommand and parameter supplied from the command and parameter extractionunit 55 to the original data saved in the original data storage unit 53,and creates edited image data; in other words, image data correspondingto the latest image being displayed is created in this instance. Theimage processing unit 57 also can perform processing corresponding tothe process contained in the marker selected by the user supplied fromthe marker storage unit 54 to the original data saved in the originaldata storage unit 53, and creates edited image data; in other words,image data corresponding to the image as it existed at the timecorresponding to the selected marker is created and displayed on theoutput unit 17.

In addition, when the original data saved in the original data storageunit 53 is to be displayed, the image processing unit 57 acquires theoriginal data saved in the original data storage unit 53 and suppliesthis to an image display control unit 60. In addition, when the originaldata is to be displayed as thumbnail images, the image processing unit57 acquires the original data saved in the original data storage unit 53and supplies this to a thumbnail image creation unit 59.

The thumbnail image creation unit 59 creates thumbnail image data basedon the image data acquired from or created by the image processing unit57 in accordance with a signal representing the operational input of theuser supplied from the operational input acquisition unit 51 when, forinstance, thumbnail images are to be displayed, or when the image datafile is to be saved.

The image display control unit 60 controls the display of the imagedisplay area among the display windows indicated on the screen of theoutput unit 17 based on the image data or thumbnail image data createdwith the image processing unit 57 or the thumbnail image creation unit59.

A marker data display control unit 61 controls the display of the markerdata display area among the display windows indicated on the screen ofthe output unit 17 based on the marker(s) saved in the marker storageunit 54. A window display control unit 62 controls the display of thedisplay window indicated on the screen of the output unit 17 based onthe data supplied from the image display control unit 60 and the markerdata display control unit 61.

Upon receiving a notification from the operational input acquisitionunit 51 indicating that a marker has been selected by the user, and acommand for creating a new image data file corresponding to such marker,the marker applied image data creation unit 58 receives the data of themarker selected by the user from the marker storage unit 54, performsprocessing corresponding to the command and parameter of the processcontained in the selected marker to the original data saved in theorigin al data storage unit 53, creates new image data, supplies this tothe original data storage unit 53 as new original data, and saves ittherein.

When a command for closing or saving the image data file has been madeby the user via the operational input acquisition unit 51, a memorycontrol unit 63 controls a file creation unit 64 so as to create theimage data file to be saved, and, upon receiving the image data file tobe saved from the file creation unit 64, supplies this to the memoryunit 18 and saves it therein.

The file creation unit 64 reads from the original data storage unit 53the original data corresponding to the image data to be closed or savedpursuant to the user's command based on the control of the memorycontrol unit 63, reads from the marker storage unit 54 the markercorresponding to such image data, reads from the process storage unit 56the current process corresponding to the image data, and furtheracquires the thumbnail image data corresponding to the latest editedimage data created with the thumbnail image creation unit 59, creates asingle image data file, and supplies this to the memory control unit 63.

Various settings may be made in the image processing applicationprogram.

In the image processing application program, for example, when a markeris contained in the image data file commanded to be opened, it ispossible to set in advance whether the image to be displayed whenopening the file is only an image corresponding to the original data,only an image corresponding to the image data subjected to processingcorresponding to the current process upon being saved, or all imagescorresponding to the image data employing the markers contained in theimage data file. Moreover, in the image processing application program,when a plurality of images are to be displayed when opening the file, itis possible to set in advance whether a plurality of thumbnail imagesare to be displayed on a single window, the ordinary image and thumbnailimages are to be concurrently displayed on a single window, or therespective images are to be individually displayed on a plurality ofwindows.

In addition, when a command is made for saving or closing the file,although it has been explained above that an image data file containingthe original data, marker, current process, and thumbnail imagescorresponding to the latest editing state is created and saved, it alsois possible to set whether the thumbnail image data is to be containedin the image data file to be saved.

Next, processing in a case where the image processing applicationprogram explained with reference to the functional block diagram of FIG.2 is activated based on the operational input by the user is explained.

When the operational input acquisition unit 51 acquires an operationalinput commanding the reading of the image data file, the reading controlunit 52 reads from the memory unit 18 the image data file commanded bythe user to be read, supplies the original data contained in the imagedata file to the original data storage unit 53, and when a marker iscontained in the image data file, supplies the data of the marker to themarker storage unit 54.

For example, if the setting is such that the image corresponding to theoriginal data is to be displayed when the image data file is opened, theimage processing unit 57 acquires the original data saved in theoriginal data storage unit 53 and supplies this to the image displaycontrol unit 60. The marker storage unit 54 supplies the supplied markerinformation to the marker data display control unit 61.

The window display control unit 62 controls the display of a displaywindow 81 indicated on the screen of the output unit 17 as shown in FIG.3 based on the data supplied from the image display control unit 60 andthe marker data display control unit 61.

The display window 81 depicted in FIG. 3 is composed of a tool bar 91, afile selection area 92, an image display area 93 and an operationalinput area 94.

As a result of the user selecting a desired mark, the tool bar 91displays various menus corresponding to such mark. The file selectionarea 92 is an area which displays graphics representing the layeredsystem of the folders or files such that the image data file to beopened can be selected when the user commands the opening of the imagedata file. The image display area 93 is an area for displaying an imagein which the display thereof is controlled based on the opened imagedata file, or an image corresponding to the image data being edited. Theoperational input area 94 is to be operated by the user upon makingvarious operational inputs, and menus and command tool bars are arrangedtherein.

A marker display area 101 additionally may be displayed in theoperational input area 94. The marker display area 101 contains a listbox 102, an Add button 103 and a Delete button 104.

Displayed in the list box 102 is information corresponding to theediting state(s) selectable by the user, as well as the markerscontained in the image data file. At the point in time when an imagedata file is selected and displayed, in the list box 102 of the markerdisplay area 101, only the text “original” is displayed without anymarker being displayed. Alternatively, in addition to “original”, textrepresenting a plurality of markers and “Last Saved”, which is a markercorresponding to the process when this image data was saved, aredisplayed. Further, when the user thereafter engages in an editingoperation and a command and parameter are extracted with the command andparameter extraction unit 55 and a new process is saved in the processstorage unit 56, a marker “current” corresponding to the current processis additionally displayed in the list box 102 of the marker display area101.

Information, including markers, corresponding to the editing state(s)selectable by the user may be indicated as text showing the command nameof the implemented process as shown in the list box 102 of FIG. 3(“Color Booster+sharpness”), or a symbol corresponding to the commandname. Further, for example, the markers saved as Marker 1, Marker 2 . .. may be displayed as text distinguishable with numbers or the like, orthis may be displayed in a format other than text such as with icons orimage data representing the markers.

The Add button 103 is a button to be selected by the user when the userwishes to save the current editing state as a marker. The Delete button104 is a button to be selected by the user when such user wishes todelete the saved marker selected in the list box 102.

Next, the processing is explained for a case, for example, where thesetting is made to display the edited image at the point of time it wassaved upon opening the image data file.

The image processing unit 57 acquires the original data saved in theoriginal data storage unit 53. The marker storage unit 54 supplies tothe image processing unit 57 and the marker data display control unit 61the supplied marker information.

The marker data display control unit 61 creates data corresponding tothe text data to be displayed on the list box 102 of the marker displayarea 101, and supplies this to the window display control unit 62.

The image processing unit 57 performs image processing to the suppliedoriginal data by employing the command and parameter corresponding tothe process described in the marker corresponding to the current processat the point in time it was saved, creates image data at the point intime it was saved, and supplies this to the image display control unit60.

The window display control unit 62 controls the display such that thedisplay window 81 indicated on the screen of the output unit 17 isdisplayed, for example, as shown in FIG. 4 based on the data suppliedfrom the image display control unit 60 and the marker data displaycontrol unit 61.

In FIG. 4, the constitution of the tool bar 91, file selection area 92,image display area 93 and operational input area 94 is the same as theconstitution explained with reference to FIG. 3, but the image displayedon the image display area 93 is image data at the point in time it wassaved. Therefore, “Last Saved” corresponding to the current process whenthis image data was saved does not have to be displayed in the markerdisplay area 101.

Next, the processing is explained for a case, for example, where thesetting is made to display the image data in a state of having beensubject to the processing corresponding to all markers contained in theoriginal data file as thumbnail images on the same window upon openingthe image data file.

The image processing unit 57 acquires the original data saved in theoriginal data storage unit 53. The marker storage unit 54 supplies tothe image processing unit 57 and the marker data display control unit 61the supplied marker information.

The marker data display control unit 61 creates data corresponding tothe text data to be displayed on the list box 102 of the marker displayarea 101, and supplies this to the window display control unit 62.

The image processing unit 57 performs image processing to the suppliedoriginal data by employing the command and parameter corresponding tothe process described in the respective markers, creates image datacorresponding to the editing state at the point in time the respectivemarkers were saved, and supplies this to the thumbnail image displaycontrol unit 59 together with the original data. The thumbnail imagecreation unit 59 creates thumbnail image data based on the suppliedimage data, and supplies this to the image display control unit 60. Theimage display control unit 60 determines the arrangement of thethumbnail images in the image display area 93, and supplies to thewindow display control unit 62 the data corresponding to the displayimage of the image display area 93.

The window display control unit 62 controls the display such that thedisplay window 81 indicated on the screen of the output unit 17 isdisplayed, for example, as shown in FIG. 5 based on the data suppliedfrom the image display control unit 60 and the marker data displaycontrol unit 61.

In FIG. 5, the constitution of the tool bar 91, file selection area 92,image display area 93 and operational input area 94 is the same as theconstitution explained with reference to FIG. 3, but thumbnail imagescorresponding to the original data as well as the edited image datacorresponding to all markers are displayed on the image display area 93.

Next, the processing is explained for a case, for example, where thesetting is such that the image data in a state of having been subject tothe processing corresponding to all markers contained in the originaldata and image data file is concurrently displayed as the ordinaryimage, and thumbnail images on the same window upon opening the imagedata file.

The image processing unit 57 acquires the original data saved in theoriginal data storage unit 53. The marker storage unit 54 supplies tothe image processing unit 57 and the marker data display control unit 61the supplied marker information.

The marker data display control unit 61 creates data corresponding tothe text data to be displayed on the list box 102 of the marker displayarea 101, and supplies this to the window display control unit 62.

The image processing unit 57 performs image processing to the suppliedoriginal data by employing the command(s) and parameter(s) correspondingto the process described in the respective markers, creates image datacorresponding to the editing state at the point in time the respectivemarkers were saved, and, among the original image and edited image data,supplies the image data to be displayed as thumbnail images to thethumbnail image creation unit 59, and supplies the image data to bedisplayed as the ordinary image to the image display control unit 60.The thumbnail image creation unit 59 creates thumbnail image data basedon the supplied image data, and supplies this to the image displaycontrol unit 60. The image display control unit 60 determines thearrangement of the thumbnail images and the ordinary image in the imagedisplay area 93, and supplies to the window display control unit 62 thedata corresponding to the display image of the image display area 93.

The window display control unit 62 controls the display such that thedisplay window 81 indicated on the screen of the output unit 17 isdisplayed, for example, as shown in FIG. 6 based on the data suppliedfrom the image display control unit 60 and the marker data displaycontrol unit 61.

In FIG. 6, the constitution of the tool bar 91, file selection area 92,image display area 93 and operational input area 94 is the same as theconstitution explained with reference to FIG. 3, but imagescorresponding to the original data as well as images corresponding toall markers are concurrently displayed on the image display area 93 asan ordinary image and as thumbnail images, respectively. Regarding whichimage is to be displayed as the ordinary image, this may be set inadvance, or the image corresponding to the original image data or editedimage data at the point in time it was saved may be displayed as theordinary image, and the other images may be displayed as thumbnailimages. In addition, all image data may be displayed as thumbnailimages, and an image corresponding to a thumbnail image selected by theuser among such thumbnail images may be displayed as the ordinary image.

Further, when a thumbnail image shown in FIG. 5 or FIG. 6 is selectedand an operational input is made for deleting such thumbnail image, themarker corresponding to the deleted thumbnail image also may be deletedfrom the marker storage unit 54.

Finally, the processing is explained for a case, for example, where thesetting is such that a plurality of display windows 81 are indicated onthe screen upon opening the image data file, and the image data in astate of having been subject to the processing corresponding to allmarkers contained in the image data file and the image corresponding tothe original data are displayed on the image display area 93 of therespective display windows 81.

The image processing unit 57 acquires the original data saved in theoriginal data storage unit 53. The marker storage unit 54 supplies tothe image processing unit 57 and the marker data display control unit 61the supplied marker information.

The marker data display control unit 61 creates data corresponding tothe text data to be displayed on the marker display area 101, andsupplies this to the window display control unit 62.

The image processing unit 57 performs image processing to the suppliedoriginal data by employing the command(s) and parameter(s) correspondingto the process described in the respective markers, creates image datacorresponding to the editing state at the point in time the respectivemarkers were saved, and supplies this to the image display control unit60 together with the original image. The image display control unit 60supplies to the window display control unit 62 the data corresponding tothe display image of the respective image display areas 93 of theplurality of display windows 81, and supplies this to the window displaycontrol unit 62.

The window display control unit 62 controls the display such that theplurality of display windows 81 indicated on the screen of the outputunit 17 is displayed, for example, as shown in FIG. 7 based on the datasupplied from the image display control unit 60 and the marker datadisplay control unit 61. FIG. 7 illustrates a case of indicating fourdisplay windows 81.

The constitution of the tool bar 91, file selection area 92, imagedisplay area 93 and operational input area 94 in the respective windows81-1 to 81-4 depicted in FIG. 7 is the same as the constitutionexplained with reference to FIG. 3, and images corresponding to theoriginal data or the edited image data corresponding to one of themarkers are individually displayed on the respective image display areas93. The user may select any one of the plurality of display windows 81-1to 81-4 as the active window, and commence editing processing thereof.

By referring to the images displayed on the image display area 93 of thedisplay window 81 explained with reference to FIG. 3 to FIG. 7, the usercan input the command and parameter for editing the image.

The command and parameter extraction unit 55 extracts a processcontaining at least one command and its (their) associated parameter(s)from the operational input of the user acquired with the operationalinput acquisition unit 51, and supplies this to the image processingunit 57 and to the process storage unit 56. The image processing unit 57creates display image data based on the supplied process. Display of thecreated display image data on the image display area 93 is controlledwith the processing of the image display control unit 60 and the windowdisplay control unit 62.

The process applied to the original data is saved in the process storageunit 56 in chronological order. In addition, when the user commands thestorage of a marker, the process saved in the process storage unit 56 atthat point in time, that is, the current process, is saved as a markerin the marker storage unit 54.

For example, as shown in FIG. 8, in a case where the storage of themarker is commanded during the input of Process 1 to Process 4, Process1 to Process 4 will be saved in the marker storage unit 54 as Marker 1.In addition, after marker 1 has been stored, in a case where Process 4to Process 8 are input and the storage of the marker is commanded whileProcess 1 to Process 8 are being saved as the current process, Process 1to Process 8 will be saved as Marker 2 in the marker storage unit 54.Furthermore, Process 1 to Process 10, including Process 9 and Process 10which were input after the Marker 2 has been saved, are saved as thecurrent process in the process storage unit 56.

When the user selects any one of the saved markers and commands thedisplay of an image in an edited state corresponding to such marker, theimage processing unit 57 acquires the data of the marker selected by theuser from the marker storage unit 54, performs image processing to theoriginal data acquired from the original data storage unit 53 byemploying the command and parameter corresponding to the marker, createsan image data corresponding to the image to be displayed, and suppliesthis to the image display control unit 60. The image display controlunit 60 supplies to the window display control unit 62 the image datacorresponding to the image to be displayed on the image display area 93,and the window display control unit 62 controls the display of the imagein an edited state corresponding to the selected marker on the imagedisplay area 93.

When the command and parameter extraction unit 55 extracts thecommand(s) and parameter(s) based on the operational input of the useracquired with the operational input acquisition unit 51 after the imagedata having been subject to the processing of the command(s) andparameter(s) corresponding to the selected marker is created and thecorresponding edited image is displayed on the image display area 93,the process storage unit 56 resets the current process currently beingsaved to a state corresponding to the marker selected by the user, andthereafter saves the newly input command and parameter as a process. Themarker saved in the marker storage unit 54 is not changed.

An example of this is described with respect to FIGS. 9 and 10. As shownin FIG. 9: (1) Process 1 to Process 10 are saved in the process storageunit 56, (2) the selection by the user of the saved Marker 1 is notifiedfrom the operational input acquisition unit 51, and (3) the Process 11subsequently has been input after the image data in which the command(s)and parameter(s) of Process 1 to Process 4 (corresponding to Marker 1)has been applied to the original data is created and the correspondingimage is displayed. Then, as shown in FIG. 10, Process 1 to Process 4corresponding to Marker 1, Process 11 input thereafter, and a subsequentprocess, for example, Process 12, are saved as the current process inthe process storage unit 56. (Thus, as mentioned in the precedingparagraph, the contents of process storage unit 56 is reset.) Pursuantto the processing of the image processing unit 57, image data in whichimage processing is performed to the original data by employing thecommand(s) and parameter(s) corresponding to the current process iscreated, and the image corresponding to the created image data isdisplayed on the image data display area 93 of the display window 81.

In addition, when the storage of the marker is commanded in this state,as shown in FIG. 11, Process 1 to Process 4 as the current process, aswell as Process 11 and Process 12 are saved as Marker 3 in the markerstorage unit 54. Since the marker storage unit 54 supplies the updatedmarker data to the marker data display control unit 61, the display ofthe list box 102 of the marker display area 101 is updated pursuant tothe processing of the marker data display control unit 61 and the windowdisplay control unit 62.

Thereafter, as shown in FIG. 12, in a state where Processes 1 to 4 aswell as Process 11 and Process 12 are saved in the process storage unit56, when the selection by the user of the saved Marker 2 is notifiedfrom the operational input acquisition unit 51, and the Process 13subsequently has been input after the image data in which the command(s)and parameter(s) of Process 1 to Process 8 (corresponding to Marker 2)have been applied to the original data is created and the correspondingimage is displayed, then as shown in FIG. 13, Process 1 to Process 8corresponding to Marker 2 and subsequent Process 13 are saved as thecurrent process in the process storage unit 56. Pursuant to theprocessing of the image processing unit 57, image data to be displayedin which image processing is performed to the original data by employingthe command(s) and parameter(s) corresponding to the current process iscreated, and the image corresponding to the created image data isdisplayed on the image data display area 93 of the display window 81.

As described above, in addition to being able to command the storage ofthe marker in an arbitrary editing state, the user also is able to callup the editing state saved as the marker.

Further, when the setting is such that the image corresponding to theimage data in a state of having been subject to the processingcorresponding to all markers contained in the image data file is to bedisplayed upon opening the image data file, the user may select theimage displayed on a plurality of display windows 81 or an image data inone's desired editing state upon referring to the plurality of thumbnailimages displayed on the image display area 93 as described withreference to FIG. 5 to FIG. 7. That is, the user is able to input thecommand(s) and parameter(s) for additionally editing the selected imagedata by clicking the thumbnail image corresponding to the image data ofone's desired editing state, or activating the display window 81 onwhich the image data of one's desired editing state is displayed.

In other words, when the image displayed on the plurality of displaywindows 81 or an image among the plurality of thumbnail images displayedon the image display area 93 is selected, and the command(s) andparameter(s) are input, the process corresponding to the selected imagedata and the newly input command(s) and parameter(s) are saved in theprocess storage unit 56 as the current process corresponding to theimage data being edited.

FIG. 14 shows an example of this. As shown in FIG. 14, the markers savedin the marker storage unit 54 are Marker 1 corresponding to Process 1 toProcess 4, Marker 2 corresponding to Process 1 to Process 8, and Marker3 corresponding to Process 1 to Process 10. The image data to bedisplayed created with the image processing unit 57, that is, the imageto be displayed on the plurality of display windows 81 or the pluralityof thumbnail images to be displayed on the image display area 93 are theoriginal image, Edited Image 1 in which the command(s) and parameter(s)corresponding to Marker 1 has been applied to the original image, EditedImage 2 in which the command(s) and parameter(s) corresponding to Marker2 has been applied to the original image, and Edited Image 3 in whichthe command(s) and parameter(s) corresponding to Marker 3 has beenapplied to the original image. When the user selects Edited Image 2among the above and inputs a new process, the newly input Process 11extracted with the command and parameter extraction unit 55 is added toProcess 1 to Process 8 corresponding to Marker 2 saved in the markerstorage unit 54, and all of this is stored in the process storage unit56 as the current process. Then, the image processing unit 57 createsimage data in which the process corresponding to Marker 2 saved in themarker storage unit 54 and the newly input Process 11 extracted with thecommand and parameter extraction unit 55 are applied to the originaldata saved in the original data storage unit 53, and the imagecorresponding to this created image data is displayed on the imagedisplay area 93 of the display window 81 pursuant to the processing ofthe image display control unit 60 and the window display control unit62.

In addition, as shown in FIG. 15, when Process 12, which is a newprocess, is input, the process storage unit 56 additionally adds Process12 to the current process, and the image processing unit 57 updates thedisplay image data with Process 12 extracted with the command andparameter extraction unit 55.

Thereafter, when the selection by the user of the saved Marker 1 isnotified from the operational input acquisition unit 51, and the Process13 subsequently has been input after the image data in which thecommand(s) and parameter(s) of Process 1 to Process 4 (corresponding toMarker 1) having been applied to the original data is created with theimage processing unit 57 and the corresponding Edited Image 1 isdisplayed, as shown in FIG. 16, the process storage unit 56 will becomea state in which Process 1 to Process 4 as well as Process 13 are beingstored. In addition, the image processing unit 57 will update thedisplayed image data (of Edited Image 1) with Process 13 extracted withthe command parameter extraction unit 55. Although the displayed imageis updated as described above, the original data saved in the originaldata storage unit 53 is not updated.

Further, when the marker displayed in the marker display area 101 isselected and the display of an image is commanded, as shown in FIG. 17,the image processing unit 57 is able to create, regardless of thecurrent process, the image data of an editing state corresponding to themarker selected by the user based on the marker selected by the user andsaved in the marker storage unit 54 and the original data saved in theoriginal data storage unit 53.

When a plurality of markers are selected by the user and the display ofimages is commanded, the image processing unit 57 is able to create aplurality of image data to be displayed based on the plurality ofmarkers selected by the user and the original data saved in the originaldata storage unit 53. Here, the display of such plurality of createdimage data is similar to the case explained with reference to FIG. 5 toFIG. 7, and a plurality of thumbnail images may be displayed on a singleimage data display area 93, thumbnail images and an ordinary image maybe concurrently displayed on a single image data display area 93, or aplurality of display windows 81 may be displayed.

Moreover, according to this image processing application program, a newimage data file may be created with the marker data saved in the markerstorage unit 54.

When the marker displayed in the list box 102 of the marker display area101 and the creation of a new image data file is commanded, as shown inFIG. 18, the marker data applied image data creation unit 58 creates animage data corresponding to the editing state of the marker selected bythe user as the original data of such new image data file based on themarker selected by the user and saved in the marker storage unit 54 andthe original data saved in the original data storage unit 53, and savesthis in the original data storage unit 53. Here, the new original datais given a new image data file name such that it can be distinguishedfrom the other original data stored in original data storage unit 53.

When a plurality of markers are selected by the user and the creation ofa new image data file is commanded, the marker data applied image datacreation unit 58 is able to create and save in the original data storageunit 53 a plurality of image data corresponding to the editing statecorresponding to the markers selected by the user as the original dataof the new image data file based on the plurality of markers selected bythe user and the original data saved in the original data storage unit53. Here, the plurality of created original data is similar to the caseexplained with reference to FIG. 5 to FIG. 7, and a plurality ofthumbnail images may be displayed on a single image data display area93, thumbnail images and an ordinary image may be concurrently displayedon a single image data display area 93, or a plurality of displaywindows 81 may be displayed.

In addition, when the user commands the closing or storage of a desiredimage data file, the operational input acquisition unit 51 notifies thethumbnail image creation unit 59 that it received a command for closingor saving the image data file. The thumbnail image creation unit 59acquires the latest edited image data created with the image processingunit 57, and creates thumbnail image data corresponding to the latestedited image data.

In addition, the operational input acquisition unit 51 notifies thememory control unit 63 that it received the command for closing orsaving the image data file. The memory control unit 63 controls the filecreation unit 64 and makes it create the image data file to be saved.Thus, as shown in FIG. 19, the original data saved in the original datastorage unit 53, the marker saved in the marker storage unit 54, thecurrent process saved in the process storage unit 56, and the thumbnailimages created with the thumbnail image creation unit 59 are supplied tothe file creation unit 64, whereby a single image data file containingthe original data, marker data, current process and thumbnail imagescorresponding to the latest edited image is created, supplied to thememory control unit 63, and, for example, storage in the memory unit 18such as a hard disk or in the various storage media installed in thedrive 20 is controlled.

Thumbnail image data may be included in the image data file to be saved.

Next, processing of the image processing application program isexplained with reference to the flowcharts of FIG. 20A to FIG. 20C.

At step S1, the CPU 10 reads the image processing application programrecorded in the memory unit 18 via the I/O interface 15 and bus 14 basedon the operational input of the user supplied via the I/O interface 15and bus 14 and input with the input unit 16, loads this in the RAM 13,and activates the image processing application program.

The processing after the activation of the image processing applicationprogram is now described based on the functional block diagram explainedwith reference to FIG. 2.

At step S2, the operational input acquisition unit 51 determines whethera command for commencing the creation of a new image has been made basedon the acquired operational input of the user. When it is determined atstep S2 that a command for commencing the creation of a new image hasbeen made, at step S3, the operational input acquisition unit 51notifies the window display control unit 62 that it received the commandfor commencing the creation of a new image. The window display controlunit 62 controls the display of the display window 81 for creating thenew image. At this point, the display window 81 has nothing displayed inthe image display area 93, on the screen of the output unit 17. When itis determined at step S2 that a command for commencing the creation of anew image has not been made, or, after the processing of step S3, atstep S4, the operational input acquisition unit 51 determines whether acommand for opening the file has been made based on the acquiredoperational input of the user.

When it is determined at step S4 that a command for opening the file hasbeen made, at step S5, the operational input acquisition unit 51notifies the reading control unit 52 that it received the command foropening the file. The reading control unit 52 reads the data of theimage data file selected by the user, and supplies the original data tothe original data storage unit 53 and the marker data to the markerstorage unit 54, respectively, and saves them therein.

At step S6, the image processing unit 57 determines whether a settingfor displaying, in addition to the original data, the edited imagesubjected to the processing corresponding to all markers upon openingthe file has been made.

When it is determined at step S6 that a setting for displaying, inaddition to the original data, the edited image subjected to theprocessing corresponding to all markers upon opening the file has beenmade, at step S7, the image processing unit 57 acquires the originaldata from the original data storage unit 53, and the data of all markersfrom the marker storage unit 54, adds this to the image datacorresponding to the original data, creates an edited image datasubjected to the processing corresponding to all markers, and suppliesthis to either the image display control unit 60 or to the thumbnailimage creation unit 59, or both. The image data processed with the imagedisplay control unit 60 and the thumbnail image creation unit 59 arerespectively supplied to the window display control unit 62. Further,the marker data display control unit 61 also supplies the display datato be displayed on the marker display area 101 to the window displaycontrol unit 62. The window display control unit 62 displays on thedisplay window 81 the image corresponding to the image data respectivelycreated and the information representing the saved markers with a presetdisplay method based on the data supplied from the image display controlunit 60 and the marker data display control unit 61.

When it is determined at step S6 that a setting for displaying, inaddition to the original data, the edited image subjected to theprocessing corresponding to all markers upon opening the file has notbeen made, at step S8, the image processing unit 57 acquires theoriginal data from the original data storage unit 53, and, when asetting for displaying the image at the time it was saved has been made,acquires data of the marker corresponding to the current process at thetime it was saved from the marker storage unit 54, creates an editedimage data subjected to the processing corresponding to the currentprocess at the time it was saved, and supplies this to the image displaycontrol unit 60. Moreover, when a setting for displaying the originalimage has been made, the image processing unit 57 supplies the acquiredoriginal image to the image display control unit 60. The image dataprocessed with the image display control unit 60 is supplied to thewindow display control unit 62. Further, the marker data display controlunit 61 also supplies the display data to be displayed on the markerdisplay area 101 to the window display control unit 62. The windowdisplay control unit 62 controls the display of the data correspondingto the created image data and the information representing the savedmarkers on the display window 81 based on the data supplied from theimage display control unit 60 and the marker data display control unit61.

When it is determined at step S4 that a command for opening the file hasnot been made, or after the processing of step S7 or step S8, at stepS9, the command and parameter extraction unit 55 determines whether aninput of a command and parameter for image processing has been madebased on the operational input of the user acquired with the operationalinput acquisition unit 51. The processing from step S9 to step S28 isperformed to the image data file being edited in the active displaywindow 81.

When it is determined at step S9 that an input of a command andparameter for image processing has been made, at step S10, the commandand parameter extraction unit 55 supplies the extracted command andcorresponding parameter to the process storage unit 56 and the imageprocessing unit 57. The process storage unit 56 newly adds the suppliedprocess to the current process and retains it therein, and the imageprocessing unit 57 executes the image processing corresponding to thesupplied process and updates the image data corresponding to the imageto be displayed in the image display area 93.

When it is determined at step S9 that an input of a command andparameter for image processing has not been made, or after theprocessing of step S10, at step S11, the process storage unit 56determines whether an operational input commanding the creation of amarker has been made based on the operational input of the user acquiredwith the operational input acquisition unit 51.

When it is determined at step S1 that an operational input commandingthe creation of a marker has been made, at step S12, the process storageunit 56 supplies to the marker storage unit 54 the process stored as thecurrent process. The marker storage unit 54 retains the supplied currentprocess as the marker.

When it is determined at step S1 that an operational input commandingthe creation of a marker has not been made, or after the processing ofstep S12, at step S13, the marker storage unit 54 determines whether themarker displayed in the list box of the marker display area 101 of thedisplay window 81 has been selected based on the operational input ofthe user acquired with the operational input acquisition unit 51.

When it is determined at step S13 that the marker has not been selected,the processing proceeds to step S24 described later.

When it is determined at step S13 that the marker has been selected, atstep S14, the marker storage unit 54 determines whether a command forcreating a new image data file employing the marker has been made basedon the operational input of the user acquired with the operational inputacquisition unit 51.

When it is determined at step S14 that a command for creating a newimage data file employing the marker has not been made, the processingproceeds to step S19 described later.

When it is determined at step S14 that a command for creating a newimage data file employing the marker has been made, since the markerstorage unit 54 supplies the selected marker to the marker applied imagedata creation unit 58, at step S15, the marker applied image datacreation unit 58 determines whether a plurality of selected markers wasselected at step S13 based on the supplied marker.

When it is determined at step S15 that a plurality of markers has beenselected, at step S16, the marker applied image data creation unit 58creates original data for the plurality of new image data filesrespectively employing the selected markers and supplies these to theoriginal data storage unit 53.

When it is determined at step S15 that a plurality of markers has notbeen selected, at step S17, the marker applied image data creation unit58 creates original data for the new image data file employing theselected marker, and supplies this to the original data storage unit 53.

After the processing of step S16 or step S17, at step S18, the imageprocessing unit 57 reads from the original data storage unit 53 theoriginal data for the created new image data file, supplies this to theimage display control unit 60, and the image display control unit 60additionally controls the display of the display window 81 in which theoriginal data for the new image data file is displayed in the imagedisplay area 93. After the processing of step S18, the processingproceeds to step S24 described later.

When it is determined at step S14 that a command for creating a newimage data file employing the marker has not been made, at step S19, themarker storage unit 54 determines whether a command for displaying animage in a state corresponding to the selected marker has been madebased on the operational input of the user acquired with the operationalinput acquisition unit 51.

When it is determined at step S19 that a command for displaying an imagein a state corresponding to the selected marker has not been made, theprocessing proceeds to the processing of step S23 described later.

When it is determined at step S19 that a command for displaying an imagein a state corresponding to the selected marker has been made, since themarker storage unit 54 supplies to the image processing unit 57 the dataof the selected marker, at step S20, the image processing unit 57creates image data in an editing state corresponding to the retainedmarker. The display of the created image data to the image display area93 of the display window 81 is controlled with the processing of theimage display control unit 60 and the window display control unit 62.

At step S21, the command and parameter execution unit 55 determineswhether an input of a command and parameter for image processing hasbeen made based on the operational input of the user acquired with theoperational input acquisition unit 51. When it is determined at step S21that an input of a command and parameter for image processing has notbeen made, the processing of step S21 is repeated until it is determinedthat an input of a command and parameter for image processing has beenmade.

When it is determined at step S21 that an input of the command andparameter for image processing has been made, at step S22, the commandand parameter extraction unit 55 extracts the command and parameter fromthe operational input of the user acquired with the operational inputacquisition unit 51, and supplies this to the process storage unit 56.The process storage unit 56 resets the retained contents of the currentprocess up to the point of the selected marker, and adds the processinput after the selection of the marker to the current process.

When it is determined at step S19 that a command for displaying an imagein a state corresponding to the selected marker has not been made, atstep S23, the operational input acquisition unit 51 determines whetherthe selection of the marker has been cancelled by the user.

When it is determined at step S23 that the selection of the marker hasnot been cancelled by the user, the processing returns to step S14, andthe subsequent processing is repeated.

When it is determined at step S13 that a marker has not been selected,after the processing of step S18, after the processing of step S22, orwhen it is determined at step S23 that the selection of the marker hasbeen cancelled by the user, at step S24, the thumbnail image creationunit 59 determines whether a command for displaying thumbnail images hasbeen made based on the operational input of the user acquired with theoperational input acquisition unit 51.

When it is determined at step S24 that a command for displayingthumbnail images has been made, at step S25, the thumbnail imagecreation unit 59 creates thumbnail image data based on the image datacreated with the image processing unit 57 which corresponds to themarker designated by the user, or all markers. The display of thecreated thumbnail image data in the image display area 93 of the displaywindow 81 is controlled pursuant to the processing of the image displaycontrol unit 60 and the window display control unit 62.

When it is determined at step S24 that a command for displayingthumbnail images has not been made, or after the processing of step S25,at step S26, the operational input acquisition unit 51 determineswhether a command for closing the image data file has been made based onthe operational input made by the user.

When it is determined at step S26 that a command for closing the imagedata file has been made, at step S27, the operational input acquisitionunit 51 notifies the thumbnail image creation unit 59 that it receivedthe command for closing the image data file. The thumbnail imagecreation unit 59 acquires the latest edited image data created with theimage processing unit 57, and creates thumbnail image data correspondingto the latest edited image data.

At step S28, the operational input acquisition unit 51 notifies thememory control unit 63 that it received a command for closing the imagedata file. The memory control unit 63 controls the file creation unit 64and makes it create an image data file to be saved. The file creationunit 64 respectively reads the current process of the image data filecommanded to be closed from the process control unit 56, the data of themarker of the image data file commanded to be closed from the markerstorage unit 54, the original data corresponding to the image data filecommanded to be closed from the original data storage unit 53, and thethumbnail image data corresponding to the latest edited image data fromthe thumbnail image creation unit 59, creates a single image data filecontaining the original data, all markers, current data and thethumbnail image data created at step S27, and supplies this to thememory control unit 63. The memory control unit 63 saves the createdimage data file to be saved in the memory unit 18 such as, e.g., a harddisk or the like, or in the recording medium installed in the drive 20.

When it is determined at step S29 that a command for closing the imagedata file has not been made, or after the processing of step S28, atstep S29, the operational input acquisition unit 51 determines whether acommand for ending the application has been made based on theoperational input made by the user.

When it is determined at step S29 that a command for ending theapplication has not been made, the processing returns to step S2, andthe subsequent processing is repeated.

When it is determined at step S29 that a command for ending theapplication has been made, at step S30, the CPU 11 ends the processingof the image processing application program being executed.

As a result of the foregoing processing, according to one aspect of thepresent invention, a marker corresponding to an editing state at anarbitrary point of time in an image data being edited may be recorded inthe memory, and by a user selecting the displayed marker, the image ofan arbitrary editing state can be displayed. Here, the original imagedata is not updated.

Further, when saving the image data file, the saved editing state at anarbitrary point of time may be saved as a single file together with theoriginal image data.

Thus, when reopening a once saved edited image data, since the markercorresponding to the stored editing state also will be opened, this maybe used to performed editing processing.

In addition, by selecting a plurality of markers, images correspondingto a plurality of processing states may be displayed at once. Moreover,a marker may be used to create a new image data file of a desiredprocessing state. A plurality of markers may be selected to create aplurality of new image data files.

Further, image data may be displayed as thumbnail images, and thumbnailimages and the ordinary image also may be concurrently displayed.Moreover, by displaying a plurality of display windows at once, aplurality of images may be displayed at once on a single screen.

Software capable of making a personal computer execute the processingemploying the present invention may be installed by taking a programconstituting such software and installing it in a computer with built-inexclusive hardware, or by installing various programs. Such software maybe installed in a multipurpose personal computer capable of executingthe various functions via, for instance, the various recording mediumsillustrated in FIG. 1.

Moreover, the steps defining the program recorded in the recordingmedium in the present specification include processing to be performedin chronological order along the described sequence, as well asprocessing to be executed in parallel or independently even if suchprocessing is not performed in chronological order.

Although the foregoing description was based on realizing the executionof the image processing application program, the present invention alsomay be employed when similar functions as those described above are tobe realized with hardware. In other words, the present invention alsocan be realized with a device having the hardware block structuresimilar to the functional block diagram explained with reference to FIG.2, or hardware capable of realizing the functions similar to thoseexplained with reference to FIG. 2.

The invention further includes, as one aspect, the control programdescribed above that can be executed by a controller (e.g., CPU 10) tocontrol an image processing device (e.g., computer 1) as describedabove. The control program can be provided as a computer-readablecomputer program product, such as, e.g., a computer-readable recordingmedium on which the control program is recorded, or it may be atransmittable carrier wave in which the control program is embodied as adata signal. The control program can be implemented in an applicationspecific integrated circuit (ASIC). The control program can betransmitted by a carrier wave over a communications network such as, forexample, the World Wide Web and/or transmitted in a wireless fashion,for example, by radio waves or by infrared waves. The control programalso can be transmitted from a remote storage facility to a localcontrol unit. In such an arrangement, the local control unit interactswith the remote storage facility to transfer all or part of the program,as needed, for execution by the local unit. Accordingly, the local unitdoes not require a large amount of memory capacity. Thecomputer-readable recording medium can be, e.g., a CD-ROM, a computerhard drive, RAM, or other types of memories that are readily removableor intended to remain fixed within the computer.

In the illustrated embodiment, the controller (CPU 10 and any necessarymemory (ROM and/or RAM)) preferably is implemented using a suitablyprogrammed general purpose computer, e.g., a microprocessor,microcontroller or other processor device (CPU or MPU). It will beappreciated by those skilled in the art, that the controller also can beimplemented as a single special purpose integrated circuit (e.g., ASIC)having a main or central processor section for overall, system-levelcontrol, and separate sections dedicated to performing various differentspecific computations, functions and other processes under control ofthe central processor section. The controller also can be implementedusing a plurality of separate dedicated or programmable integrated orother electronic circuits or devices (e.g., hardwired electronic orlogic circuits such as discrete element circuits, or programmable logicdevices such as PLDs, PLAs, PALs or the like). The controller also canbe implemented using a suitably programmed general purpose computer inconjunction with one or more peripheral (e.g., integrated circuit) dataand signal processing devices. In general, any device or assembly ofdevices on which a finite state machine capable of implementing thedescribed procedures can be used as the calculation devices/controllerof the invention.

While the invention has been described with reference to preferredembodiments thereof, it is to be understood that the invention is notlimited to the preferred embodiments or constructions. To the contrary,the invention is intended to cover various modifications and equivalentarrangements. In addition, while the various elements of the preferredembodiments are shown in various combinations and configurations, thatare exemplary, other combinations and configurations, including more,less or only a single element, are also within the spirit and scope ofthe invention.

1. An image processing device, comprising: original image data storagemeans for saving original image data; operational input acquisitionmeans for acquiring operational inputs of a user; command and parameterstorage means for temporarily saving at least one command and associatedparameter for editing the original image data acquired through theoperational input acquisition means; editing means for editing theoriginal image data to create edited image data based on the at leastone command and associated parameter acquired through the operationalinput acquisition means; marker storage means for saving at least one ofthe commands and associated parameters temporarily saved in the commandand parameter storage means as marker data for showing the editing stateat a prescribed timing when an operational input commanding the storageof the current editing state is acquired through the operational inputacquisition means; and file storage control means for creating andsaving a single image data file containing the original image data savedwith the original image data storage means and the marker data savedwith the marker storage means.
 2. An image processing device accordingto claim 1, further comprising thumbnail image data creation means forcreating thumbnail image data based on at least one of the originalimage data and the edited image data edited and created with the editingmeans.
 3. An image processing device according to claim 1, furthercomprising image data display control means for controlling display ofat least one of the original image data and the edited image data editedand created with the editing means.
 4. An image processing deviceaccording to claim 3, further comprising thumbnail image data creationmeans for creating thumbnail image data based on at least one of theoriginal image data and the edited image data edited and created withthe editing means, wherein the image data display control means alsocontrols the display of the thumbnail image data created with thethumbnail image data creation means.
 5. An image processing deviceaccording to claim 3, further comprising reading control means forcontrolling the reading of the image data file saved by the file storagecontrol means, wherein when a plurality of the marker data is containedin the image data file, the editing means edits the original image dataand creates a plurality of the edited image data based on the pluralityof marker data contained in the image data file, and the image datadisplay control means controls the display of the edited image datacreated with the editing means.
 6. An image processing device accordingto claim 3, further comprising marker data display control means forcontrolling display of a list of the marker data saved with the markerstorage means, wherein when an operational input is acquired with theoperational input acquisition means for selecting one of the marker datain the displayed list, the editing means edits the original image dataand creates edited image data based on the marker data that wasselected, and the image data display control means controls the displayof the edited image data edited with the editing means.
 7. An imageprocessing device according to claim 6, wherein when the operationalinput acquired with the operational input acquisition means is anoperational input for selecting a plurality of the marker data among themarker data in the displayed list, the editing means edits the originalimage data and creates a plurality of the edited image data based on theplurality of marker data selected.
 8. An image processing deviceaccording to claim 7, further comprising thumbnail image data creationmeans for creating thumbnail image data based on at least one of theoriginal image data and the edited image data edited and created withthe editing means, wherein the thumbnail image data creation meanscreates a plurality of the thumbnail image data based on a plurality ofthe edited image data edited and created based on the selected pluralityof marker data.
 9. An image processing device according to claim 1,wherein when an operational input for commanding the storage of theimage data file is acquired with the operational input acquisitionmeans, the file storage control means controls the storage of a singleimage data file containing the original image data saved with theoriginal image data storage means and the marker data saved with themarker storage means.
 10. An image processing device according to claim9, wherein the single image data file stored by the file storage controlmeans further contains the at least one command and associated parametersaved with the command and parameter storage means in addition to theoriginal image data saved with the original image data storage means andthe marker data saved with the marker storage means.
 11. An imageprocessing device according to claim 1, further comprising: marker datadisplay control means for controlling the display of a list of themarker data saved with the marker storage means; and new original imagedata creation means for editing the original image data and creating neworiginal image data based on the marker data saved with the markerstorage means.
 12. An image processing device according to claim 11,wherein when the operational input acquired with the operational inputacquisition means is an operational input for selecting a plurality ofthe marker data among the marker data in the displayed list, the neworiginal image data creation means edits the original image data andcreates a plurality of the new original image data based on the selectedplurality of marker data.
 13. An image processing device, comprising: amemory that stores image data including original image data; and acontroller that: acquires operational inputs of a user; temporarilysaves at least one command and associated parameter for editing theoriginal image data, acquired through the operational inputs of theuser; edits the original image data to create edited image data based onthe acquired at least one command and associated parameter; saves atleast one of the temporarily saved commands and associated parameters asmarker data for showing the editing state at a prescribed timing when anoperational input commanding the storage of the current editing state isacquired through the operational inputs of the user; and creates andsaves a single image data file containing the stored original image dataand the saved marker data.
 14. An image processing device according toclaim 13, wherein the controller further creates thumbnail image databased on at least one of the original image data and the edited imagedata.
 15. An image processing device according to claim 13, wherein thecontroller further controls display of at least one of the originalimage data and the edited image data.
 16. An image processing deviceaccording to claim 15, wherein the controller further creates thumbnailimage data based on at least one of the original image data and theedited image data, and also controls the display of the createdthumbnail image data.
 17. An image processing device according to claim15, wherein the controller further controls the reading of the savedimage data file, wherein when a plurality of the marker data iscontained in the image data file, the controller edits the originalimage data and creates a plurality of the edited image data based on theplurality of marker data contained in the image data file, and thecontroller controls the display of the created edited image data.
 18. Animage processing device according to claim 15, wherein the controllerfurther controls display of a list of the saved marker data, whereinwhen an operational input is acquired for selecting one of the markerdata in the displayed list, the controller edits the original image dataand creates edited image data based on the marker data that wasselected, and controls the display of the edited image data.
 19. Animage processing device according to claim 18, wherein when theoperational input acquired is an operational input for selecting aplurality of the marker data among the marker data in the displayedlist, the controller edits the original image data and creates aplurality of the edited image data based on the plurality of marker dataselected.
 20. An image processing device according to claim 19, whereinthe controller further creates thumbnail image data based on at leastone of the original image data and the edited image data, and thecontroller creates a plurality of the thumbnail image data based on aplurality of the edited image data edited and created based on theselected plurality of marker data.
 21. An image processing deviceaccording to claim 13, wherein when an operational input for commandingthe storage of the image data file is acquired, the controller controlsthe storage of a single image data file containing the saved originalimage data and the saved marker data.
 22. An image processing deviceaccording to claim 21, wherein the stored single image data file furthercontains the at least one command and associated parameter saved inaddition to the saved original image data and the saved marker data. 23.An image processing device according to claim 13, wherein the controllerfurther: controls display of a list of the saved marker data; and editsthe original image data and creates new original image data based on thesaved marker data.
 24. An image processing device according to claim 23,wherein when the operational input acquired is an operational input forselecting a plurality of the marker data among the marker data in thedisplayed list, the controller edits the original image data and createsa plurality of the new original image data based on the selectedplurality of marker data.
 25. A computer-readable computer programproduct having computer-executable instructions to cause a computer toperform a plurality of steps comprising: an original image data storagecontrol step of controlling the storage of original image data; anoperational input acquisition step of acquiring operational inputs of auser; a command and parameter storage control step of controlling thetemporary storage of at least one command and associated parameter forediting the original image data acquired with the operational inputacquisition step; an editing step of editing the original image data tocreate edited image data based on the at least one command andassociated parameter acquired with the operational input acquisitionstep; a marker storage control step of controlling the storage of atleast one of the commands and associated parameters temporarily storedin the command and parameter storage control step as marker data forshowing the editing state at a prescribed timing when an operationalinput commanding the storage of the current editing state is acquiredwith the operational input acquisition step; and a file storage controlstep of creating a single image data file containing the original imagedata stored in the original image data storage control step and themarker data stored in the marker storage control step, and controllingthe storage of the image data file.
 26. A computer program productaccording to claim 25, wherein the instructions further comprise athumbnail image data creation step of creating thumbnail image databased on at least one of the original image data and the edited imagedata edited and created in the editing step.
 27. A computer programproduct according to claim 25, wherein the instructions further comprisean image data display control step of controlling display of at leastone of the original image data and the edited image data edited andcreated in the editing step.
 28. A computer program product according toclaim 27, wherein the instructions further comprise a thumbnail imagedata creation step of creating thumbnail image data based on at leastone of the original image data and the edited image data edited andcreated in the editing step, wherein the image data display control stepalso controls the display of the thumbnail image data created in thethumbnail image data creation step.
 29. A computer program productaccording to claim 27, wherein the instructions further comprise areading control step of controlling the reading of the image data filestored in the file storage control step, wherein when a plurality of themarker data is contained in the image data file, the editing step editsthe original image data and creates a plurality of the edited image databased on the plurality of marker data contained in the image data file,and the image data display control step controls the display of theedited image data created in the editing step.
 30. A computer programproduct according to claim 27, wherein the instructions further comprisea marker data display control step of controlling display of a list ofthe marker data stored in the marker storage control step, wherein whenan operational input is acquired in the operational input acquisitionstep so as to select one of the marker data in the displayed list, theediting step edits the original image data and creates edited image databased on the marker data that was selected, and the image data displaycontrol step controls the display of the edited image data edited withthe editing step.
 31. A computer program product according to claim 30,wherein when the operational input acquired with the operational inputacquisition step is an operational input that selects a plurality of themarker data among the marker data in the displayed list, the editingstep edits the original image data and creates a plurality of the editedimage data based on the selected plurality of marker data.
 32. Acomputer program product according to claim 31, wherein the instructionsfurther comprise a thumbnail image data creation step of creatingthumbnail image data based on at least one of the original image dataand the edited image data edited and created in the editing step,wherein the thumbnail image data creation step creates a plurality ofthe thumbnail image data based on a plurality of the edited image dataedited and created based on the selected plurality of the marker dataselected in the editing step.
 33. A computer program product accordingto claim 25, wherein when an operational input for commanding thestorage of the image data file is acquired in the operational inputacquisition step, the file storage control step controls the storage ofa single image data file containing the original image data stored inthe original image data storage control step and the marker data storedin the marker storage control step.
 34. A computer program productaccording to claim 33, wherein the file storage control step controlsthe storage of a single image data file containing the at least onecommand and associated parameter stored in the processing of the commandand parameter storage control step in addition to the original imagedata stored in the original image data storage control step and themarker data stored in the marker storage control step.
 35. A computerprogram product according to claim 25, wherein the instructions furthercomprise: a marker data display control step of controlling display of alist of the marker data stored in the processing of the marker storagecontrol step; and a new original image data creation step of editing theoriginal image data and creating new original image data based on themarker data stored in the marker storage control step.
 36. A computerprogram product according to claim 35, wherein when the operationalinput acquired in the operational input acquisition step is anoperational input that selects a plurality of the marker data among themarker data in the displayed list, the new original image data creationstep edits the original image data and creates a plurality of the neworiginal image data based on the selected plurality of marker data.